Read complete calendar recording windows - #332
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Completes CLI calendar recording-window reads by following HEY pagination, fixing missing older recurring series.
Changes:
- Follows opaque cursors with empty-page and cycle termination.
- Adds pagination regression coverage and event-ordering guidance.
- Pins the SDK commit providing
GetRecordingsPage.
Tip
If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
README.md |
Documents complete pagination and ordering. |
internal/cmd/recording_filter.go |
Implements paginated recording reads. |
internal/cmd/calendar_commands_test.go |
Tests successful multi-page event listing. |
go.mod |
Pins the pagination-capable SDK commit. |
go.sum |
Updates SDK checksums. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
mise ~/.config/mise/config.toml tools: gh@2.98.0
mise ~/.config/mise/config.toml tools: gh@2.98.0
mise ~/.config/mise/config.toml tools: gh@2.98.0
Calendar recording lists stopped after HEY's first geared-pagination page. Because HEY orders recordings by start time, older recurring-series masters could disappear from
hey event listeven while they recur inside the requested window.Bug
hey event list, including--ids-only, read one/calendars/:id/recordings.jsonresponse and discarded itsLinkcursor. A full first page of newer one-off recordings hid recurring series that began earlier. The same incomplete shared reader backed to-do and journal lists and event lookup for editing.The expected behavior is for a requested recording window to include every recording HEY serves across its pages.
Fix
hey event addfor follow-up writes.The TUI is unchanged; it reads calendar day, week, and year endpoints rather than this CLI recording-window helper.
Proof
The regression test serves a one-off event on page one and an older recurring-series master on page two, then verifies
event list --ids-onlyreturns both IDs and follows HEY's opaque cursor.Dependency and risk
Uses the released
github.com/basecamp/hey-sdk/gov0.25.0 from merged basecamp/hey-sdk#125. The corresponding Nix dependency hash is refreshed for that module version.Risk is low to medium: returned data is now complete, but accounts with large recording windows may make additional API requests. No live-server smoke test was run. The original report was supplied out-of-band, so there is no durable issue link.
Reviewer focus: cursor termination in
recordingWindow.readCalendarand the shared effect on event, to-do, and journal CLI listings.